package com.gph.saviorframework.wf.dao;

import com.gph.saviorframework.base.dao.BaseDao;
import com.gph.saviorframework.wf.model.ApproveInfo;
import org.apache.ibatis.annotations.Param;
import org.aspectj.lang.annotation.Aspect;

import java.util.List;

@Aspect
public interface ApproveInfoDao extends BaseDao<ApproveInfo,String> {

    /**
     * 根据审批编号获取所有的审批信息
     * @param applyId
     * @return
     */
    List<ApproveInfo> findByApplyId(@Param(value = "applyId")String applyId);

    /**
     * 根据任务编号获取所有的审批信息
     * @param taskId
     * @return
     */
    List<ApproveInfo> findByTaskId(@Param(value = "taskId")String taskId);

    /**
     * 根据任务key获取所有的审批信息
     * @param taskKey
     * @return
     */
    List<ApproveInfo> findByTaskKey(@Param(value = "taskKey")String taskKey);

    /**
     * 根据流程实例编号获取所有的审批信息
     * @param processInsId
     * @return
     */
    List<ApproveInfo> findByProcessInsId(@Param(value = "processInsId")String processInsId);

    /**
     * 根据流程实例编号删除审批信息
     * @param processInsId
     */
    void deleteByProcessInsId(@Param(value = "processInsId")String processInsId);
}
